The disclosure generally relates to the field of digital processing systems, and more particularly to memory.
Network devices use ternary content addressable memory (TCAM) for packet processing tasks that rely on fast memory lookups, such as lookups in an access control list or route matching. Similar to a binary content addressable memory (BCAM), a TCAM allows for a fast (single clock cycle) search with a key or tag. The TCAM compares the tag to all words or entries of the TCAM. In addition to the 0 (match) and 1 (no match) states of a BCAM, the TCAM allows a third state referred to as the “don't care” or wildcard state. Packet processing leverages this wildcard state of the TCAM for partial matching of addresses and/or routes. A wildcard search may be local (i.e., one or more table entries has a bit set to be the wildcard) or global (i.e., a wildcard bit is set in the search key).